

#pragma once


#include <exception>
#include <string>
#include <memory>
#include "../utils/common_ptr.h"

class RuntimeException : public std::exception
{
public:
  RuntimeException() throw();
  RuntimeException(string_ptr msg) throw();
  virtual const char *what() const throw();
  virtual ~RuntimeException() throw();

protected:
  string_ptr m_msg;
};
